<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    //数据类型
    // 1.基本类型（原始类型，primitive）
    //  number（数值），string（字符串），boolean（布尔），undefined，null，symbol（es6）
    let a = 5; // => number
    let b = 5.6; // => number

    let c = "abc" // => string
    let d = 'ab\'c'; //单引号里面出现单引号是不允许的，可以把单引号改成双引号或是使用转义符【\】

    let e = true; // => boolean true｜false，一般来做判断

    let f;
    console.log(f); // => undefined, 未定义不是错误，是js中的一个特殊的数据类型

    // 什么时候我们会得到一个undefined
    // 1）：直接定义一个变量为undefined
    let aa = undefined;
    // 2）：声明了一个变量，但是没有赋初值
    let bb;
    // 3）：引用一个数组中不出现的元素
    let arr = [3,4,5];
    console.log(arr[6]); // => undefined
    // 4) ：访问对象中不存在的属性
    let obj = new Object();
    obj.name = 'wangwu';
    console.log(obj.name1);// => undefined
    // 5) ：没有给函数的参数传值，那么这个参数就是undefined
    function test(name){
      console.log(name); // => undefined
    }
    test();


    // 2.引用类型（reference）
  </script>
</body>
</html>